home *** CD-ROM | disk | FTP | other *** search
/ Workbench Add-On / Workbench Add-On - Volume 1.iso / Dev / Oberon / source / OC / OCStrings.mod < prev    next >
Text File  |  1995-07-02  |  7KB  |  168 lines

  1. <* STANDARD- *> <* MAIN- *> <* INITIALISE- *>
  2.  
  3. MODULE OCStrings;
  4. (****************************************************************
  5.  
  6.    This file was created automatically by `FlexCat 1.5'
  7.    Do NOT edit by hand!
  8.    Oberon-A source description C 1994 by Albert Weinert
  9.    Using with Oberon-A Interfaces for AmigaOS Release 3.1
  10.    Modified for Oberon-A 1.5 by Frank Copeland
  11.  
  12.    Application: OCStrings
  13.    Language   : "english"
  14.    Version    : 4
  15.    Description: OBERON-A:Catalogs/OCStrings.cd
  16.  
  17. ****************************************************************)
  18.  
  19. IMPORT
  20.   lo := Locale, e := Exec, u := Utility, y := SYSTEM;
  21.  
  22. CONST
  23.   builtinlanguage = "english";
  24.   version = 4;
  25.  
  26. CONST
  27.   OCS1* = 0;
  28.   OCS2* = 1;
  29.   OCS3* = 2;
  30.   OCS4* = 3;
  31.   OCS5* = 4;
  32.   OCS6* = 5;
  33.   OCS7* = 6;
  34.   OCS8* = 7;
  35.   OCS9* = 8;
  36.   OCS10* = 9;
  37.   OCS11* = 10;
  38.   OCS12* = 11;
  39.   OCS13* = 12;
  40.   OCT1* = 13;
  41.   OCT2* = 14;
  42.   OCT3* = 15;
  43.   OCT4* = 16;
  44.   OCT5* = 17;
  45.   Compiler1* = 18;
  46.   Compiler2* = 19;
  47.   Compiler3* = 20;
  48.   Compiler4* = 21;
  49.   OC1* = 22;
  50.   OC6* = 23;
  51.   OC7* = 24;
  52.   OC8* = 25;
  53.   OC9* = 26;
  54.   OC10* = 27;
  55.   OC11* = 28;
  56.   OC12* = 29;
  57.   OC13* = 30;
  58.   OC14* = 31;
  59.   OC15* = 32;
  60.   OC16* = 33;
  61.   OC17* = 34;
  62.   OC18* = 35;
  63.   OC19* = 36;
  64.   OC20* = 37;
  65.   OCC1* = 38;
  66.  
  67. TYPE
  68.   AppString = RECORD;
  69.      id  : LONGINT;
  70.      str : e.LSTRPTR;
  71.   END;
  72.   AppStringArray = ARRAY 39 OF AppString;
  73.  
  74. VAR
  75.   AppStrings : AppStringArray;
  76.   catalog : lo.CatalogPtr;
  77.  
  78.   PROCEDURE SetStrings;
  79.     BEGIN
  80.       AppStrings[0].id := OCS1; AppStrings[0].str := y.ADR( " line %ld, col %ld: err = %ld\n" );
  81.       AppStrings[1].id := OCS2; AppStrings[1].str := y.ADR( " !! Error #%ld, line = %ld, col = %ld\n" );
  82.       AppStrings[2].id := OCS3; AppStrings[2].str := y.ADR( " !! Warning #%ld, line = %ld, col = %ld\n" );
  83.       AppStrings[3].id := OCS4; AppStrings[3].str := y.ADR( "Mark: line %ld, col %ld: err = %ld\n" );
  84.       AppStrings[4].id := OCS5; AppStrings[4].str := y.ADR( "Warning: line %ld, col %ld: err = %ld\n" );
  85.       AppStrings[5].id := OCS6; AppStrings[5].str := y.ADR( " !! SET '%s' is not allowed\n" );
  86.       AppStrings[6].id := OCS7; AppStrings[6].str := y.ADR( " !! CLEAR '%s' is not allowed\n" );
  87.       AppStrings[7].id := OCS8; AppStrings[7].str := y.ADR( " !! Could not open error file '%s'\n" );
  88.       AppStrings[8].id := OCS9; AppStrings[8].str := y.ADR( "%s : compilation error listing\n" );
  89.       AppStrings[9].id := OCS10; AppStrings[9].str := y.ADR( "Module: %s\n" );
  90.       AppStrings[10].id := OCS11; AppStrings[10].str := y.ADR( " !! Errors detected\n >> Error file : %s\n" );
  91.       AppStrings[11].id := OCS12; AppStrings[11].str := y.ADR( " !! Warnings detected\n >> Warning file : %s\n" );
  92.       AppStrings[12].id := OCS13; AppStrings[12].str := y.ADR( " !! Invalid keyword table\n" );
  93.       AppStrings[13].id := OCT1; AppStrings[13].str := y.ADR( " !! Could not find '%s'\n" );
  94.       AppStrings[14].id := OCT2; AppStrings[14].str := y.ADR( " !! Error in '%s'\n" );
  95.       AppStrings[15].id := OCT3; AppStrings[15].str := y.ADR( " !! Could not open '%s'\n" );
  96.       AppStrings[16].id := OCT4; AppStrings[16].str := y.ADR( " !! Symbol file '%s' is obsolete\n" );
  97.       AppStrings[17].id := OCT5; AppStrings[17].str := y.ADR( " >> New symbol file : %s\n" );
  98.       AppStrings[18].id := Compiler1; AppStrings[18].str := y.ADR( " !! Err #16: MODULE keyword not found\n" );
  99.       AppStrings[19].id := Compiler2; AppStrings[19].str := y.ADR( " >> Object file : %s\n" );
  100.       AppStrings[20].id := Compiler3; AppStrings[20].str := y.ADR( "    CODE: %ld, DATA: %ld, VARS: %ld, TOTAL: %ld\n" );
  101.       AppStrings[21].id := Compiler4; AppStrings[21].str := y.ADR( " !! Err #10: identifier expected after MODULE\n" );
  102.       AppStrings[22].id := OC1; AppStrings[22].str := y.ADR( " !! Could not open preferences file '%s'\n" );
  103.       AppStrings[23].id := OC6; AppStrings[23].str := y.ADR( "Could not open : %s\n" );
  104.       AppStrings[24].id := OC7; AppStrings[24].str := y.ADR( "Compiling %s...\n" );
  105.       AppStrings[25].id := OC8; AppStrings[25].str := y.ADR( "Garbage collecting..." );
  106.       AppStrings[26].id := OC9; AppStrings[26].str := y.ADR( "Source file ? : " );
  107.       AppStrings[27].id := OC10; AppStrings[27].str := y.ADR( "Finished batch compile\n" );
  108.       AppStrings[28].id := OC11; AppStrings[28].str := y.ADR( " !! Could not open '%s'\n" );
  109.       AppStrings[29].id := OC12; AppStrings[29].str := y.ADR( " !! OC requires AmigaOS 2.04 or greater\n" );
  110.       AppStrings[30].id := OC13; AppStrings[30].str := y.ADR( "See OC.doc for conditions of use\n" );
  111.       AppStrings[31].id := OC14; AppStrings[31].str := y.ADR( " !! Arguments VERBOSE and QUIET are mutually exclusive\n" );
  112.       AppStrings[32].id := OC15; AppStrings[32].str := y.ADR( " !! Arguments DEBUG and NODEBUG are mutually exclusive\n" );
  113.       AppStrings[33].id := OC16; AppStrings[33].str := y.ADR( " !! Arguments MAKEICONS and NOICONS are mutually exclusive\n" );
  114.       AppStrings[34].id := OC17; AppStrings[34].str := y.ADR( " !! Arguments SMALLCODE and LARGECODE are mutually exclusive\n" );
  115.       AppStrings[35].id := OC18; AppStrings[35].str := y.ADR( " !! Arguments SMALLDATA and LARGEDATA are mutually exclusive\n" );
  116.       AppStrings[36].id := OC19; AppStrings[36].str := y.ADR( " !! Arguments REGISTER and NOREGISTER are mutually exclusive\n" );
  117.       AppStrings[37].id := OC20; AppStrings[37].str := y.ADR( "Copyright © 1993-95 Frank Copeland" );
  118.       AppStrings[38].id := OCC1; AppStrings[38].str := y.ADR( " !! Could not allocate code and/or constant buffers\n" );
  119.     END SetStrings;
  120.  
  121.   PROCEDURE CloseCatalog*();
  122.     BEGIN
  123.       IF catalog # NIL THEN lo.CloseCatalog (catalog); catalog:=NIL END;
  124.    END CloseCatalog;
  125.  
  126.   PROCEDURE OpenCatalog*(loc:lo.LocalePtr; language:ARRAY OF CHAR);
  127.     VAR Tag : ARRAY 4 OF u.TagItem;
  128.     BEGIN
  129.       CloseCatalog();
  130.       IF (catalog = NIL) & (lo.base # NIL) THEN
  131.         Tag[0].tag := lo.builtInLanguage; Tag[0].data := y.ADR( builtinlanguage );
  132.         Tag[1].tag := u.ignore;           Tag[1].data := y.ADR( language );
  133.         Tag[2].tag := lo.version;         Tag[2].data := version;
  134.         Tag[3].tag := u.done;
  135.  
  136.         IF language # "" THEN
  137.           Tag[1].tag:= lo.language;
  138.         END;
  139.         catalog := lo.OpenCatalogA (loc, "OCStrings.catalog", Tag);
  140.       END;
  141.     END OpenCatalog;
  142.  
  143.   PROCEDURE GetString* (num: LONGINT): e.LSTRPTR;
  144.     VAR
  145.       i: LONGINT;
  146.       default: e.LSTRPTR;
  147.     BEGIN
  148.       i := 0; WHILE (i < 39) & (AppStrings[i].id # num) DO INC (i) END;
  149.  
  150.       IF i # 39 THEN
  151.         default := AppStrings[i].str;
  152.       ELSE
  153.         default := NIL;
  154.       END;
  155.  
  156.       IF catalog # NIL THEN
  157.         RETURN lo.GetCatalogStr (catalog, num, default^);
  158.       ELSE
  159.         RETURN default;
  160.       END;
  161.     END GetString;
  162.  
  163. BEGIN
  164.   catalog := NIL;
  165.   SetStrings;
  166. END OCStrings.
  167.  
  168.